package response

import (
	"github.com/gin-gonic/gin"
	"net/http"
)

// Data 统一返回结果体
type Data struct {
	Ctx *gin.Context `binding:"required"`
	Code int
	Data any
	Message string
}

// Success 成功返回（带数据）
func Success(data Data)  {
	data.Ctx.JSON(http.StatusOK, gin.H{"code": http.StatusOK, "msg": "成功", "data": data.Data})
}

// SuccessNotData 成功返回（不带数据）
func SuccessNotData(ctx *gin.Context)  {
	ctx.JSON(http.StatusOK, gin.H{"code": http.StatusOK, "msg": "成功"})
}

// Error 失败返回
func Error(data Data)  {
	data.Ctx.JSON(http.StatusOK, gin.H{"code": data.Code, "msg": data.Message})
}